package com.isoft.student.service.impl;

import com.isoft.student.dao.MiddlejurisdictionMapper;
import com.isoft.student.eo.MiddlejurisdictionEOPage;
import com.isoft.student.model.Middlejurisdiction;
import com.isoft.student.service.MiddlejurisdictionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 实现业务及流程接口当中的内容
 */
@Service
public class MiddlejurisdictionServiceImpl implements MiddlejurisdictionService {

    @Autowired
    private MiddlejurisdictionMapper middlejurisdictionMapper;

    /**
     * 角色人员权限添加
     * @param middlejurisdiction 角色人员权限
     * @return 是否成功（-1 重复添加）
     */
    @Override
    public int AddMiddlejurisdiction(Middlejurisdiction middlejurisdiction) {
        int returnInt=0;
        //业务判断
        //（1）答题名称不能重复

        //(1)判断答题
        int RoleCount=middlejurisdictionMapper.getRoleCount(middlejurisdiction.getJurisdictionid());
        if (RoleCount<1){
            //2.答题信息数据添加
            int addMiddlejurisdiction=middlejurisdictionMapper.insertMiddlejurisdiction(middlejurisdiction);
            //3.返回值设置
            returnInt=addMiddlejurisdiction;
        }else {
            returnInt=-1;//有相同的信息名称
        }

        return returnInt;
    }

    /**
     * 角色人员权限更新
     * @param middlejurisdiction 角色人员权限
     * @return 更新是否成功（-1：更新执行SQL报错）
     */
    @Override
    public int UpdateMiddlejurisdiction(Middlejurisdiction middlejurisdiction) {
        int isUpdate=0;
        //1.没有相关业务流程的判断
        try {
            isUpdate=middlejurisdictionMapper.updateMiddlejurisdiction(middlejurisdiction);
        }catch (Exception e){
            isUpdate=-1;
            //打印更新报错的情况
            System.out.print("更新信息时执行SQL报错的原因为："+e.getMessage());
        }
        return isUpdate;
    }

    @Override
    public List<MiddlejurisdictionEOPage> getMiddlejurisdictionWhereAll(MiddlejurisdictionEOPage middlejurisdictionEOPage) {
        List<MiddlejurisdictionEOPage> listMiddlejurisdictionEo=middlejurisdictionMapper.getMiddlejurisdictionWhereAll(middlejurisdictionEOPage);
        return listMiddlejurisdictionEo;
    }
}
